Demodulator apparatus and demodulation method

ABSTRACT

A demodulator apparatus includes a memory and a processor coupled to the memory. The processor executes a process including: applying lattice reduction to a channel response matrix; applying linear detection to a reception signal in lattice-reduced basis using a lattice-reduced channel response matrix; calculating an expectation of a symbol in the lattice-reduced basis; inversely transforming the expectation of the symbol from the lattice-reduced basis into an original basis; and calculating soft-decision data by performing interference cancellation method in inversely transformed expectation of the symbol in the original basis.

CROSS-REFERENCE TO RELATED APPLICATION

This application is based upon and claims the benefit of priority of theprior Japanese Patent Application No. 2015-037445, filed on Feb. 26,2015, the entire contents of which are incorporated herein by reference.

FIELD

The embodiments discussed herein are related to a demodulator apparatusand a demodulation method.

BACKGROUND

Wireless communication systems using multiple-input multiple-output(MIMO) multiplexing are known. According to MIMO, a transmission signaltransmitted by a transmitter device contains a result of multiplexing aplurality of independent symbols. The receiver device receives thetransmitted signal via a plurality of reception antennas, demodulatesthe reception signal, and outputs soft-decision data corresponding tothe transmitted bits. In the MIMO demodulation, the receiver deviceperforms the process of estimating the optimal symbols from thereception signal.

Exemplary known approaches for estimating the optimal symbol from areception signal include full-maximum likelihood detection (MLD), whichsearches for the nearest lattice point comprehensively for every symbol,and, maximum mean square estimation (MMSE). Another known approach forreducing the computational load of the Full-MLD is complexity reducedMLD with QR decomposition and M-algorithm (QRM-MLD).

It is known that, the probability at which a symbol nearer to theoptimal symbol is detected can be improved by applying linear detectionsuch as MMSE under a lattice-reduced basis that is resultant of latticereduction transformation, compared with when linear detection is appliedunder the original basis. Furthermore, it is known that receptioncharacteristics such as an error ratio are improved under certainconditions by applying QRM-MLD under the lattice-reduced basis that isresultant of the lattice reduction transformation.

Prior art examples are disclosed in D. Wubben, R. Bohnke, V. Kuhn, andK. D. Kammeyer, “Near-maximum-likelihood detection of MIMO systems usingMMSE-based lattice reduction,” IEEE Int. Conf. on Commun. (ICC' 04),Vol. 2, June, 2004; X.-F. Qi and K. Holt, “A Lattice-Reduction-AidedSoft Demapper for High-Rate Coded MIMO-OFDM Systems” IEEE SignalProcessing Letters, vol. 14, no. 5, pp. 305-308, May 2007; and S.Aubert, Y. Nasser, and F. Nouvel, “Lattice Reduction-Aided Minimum MeanSquare Error K-Best Detection for MIMO Systems” in InternationalConference on Computing, Networking and Communications, ICNC 2012.

A transmitter device appends an error-correcting code and the like, andtransmits the resultant information bit sequence, as an encoded bitsequence. The receiver device then demodulates the received signalsequence, generates soft-decision data, and performs processing such aserror correction based on the generated soft-decision data, andestimates the transmitted information bit sequence. While QRM-MLD iscapable of reducing the computational load by applying the latticereduction, the computational load is still quite heavy, compared withlinear detection such as MMSE.

In addition, linear detection using the lattice reduction outputshard-decision data as the demodulation result. Linear detection usingthe lattice reduction is capable of achieving an error-correctionperformance equivalent to that of QRM-MLD with the lattice reduction,but with less computational load than that in QRM-MLD using the latticereduction. Considering subsequent processes including error correctionusing the soft-decision data, linear detection using the latticereduction, however, exhibits inferior reception performance, comparedwith QRM-MLD using the lattice reduction.

SUMMARY

According to an aspect of an embodiment, a demodulator apparatusincludes a memory and a processor coupled to the memory. The processorexecutes a process including: applying lattice reduction to a channelresponse matrix; applying linear detection to a reception signal inlattice-reduced basis using a lattice-reduced channel response matrix;calculating an expectation of a symbol in the lattice-reduced basis;inversely transforming the expectation of the symbol from thelattice-reduced basis into an original basis; and calculatingsoft-decision data by performing interference cancellation method ininversely transformed expectation of the symbol in the original basis.

The object and advantages of the invention will be realized and attainedby means of the elements and combinations particularly pointed out inthe claims.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory and arenot restrictive of the invention, as claimed.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a schematic of an exemplary communication system;

FIG. 2 is a schematic illustrating overview of an exemplary latticereduction transformation;

FIG. 3 is a block diagram illustrating an exemplary demodulatorapparatus;

FIG. 4 is a flowchart illustrating an exemplary demodulation processaccording to a first embodiment;

FIG. 5 is a flowchart illustrating an exemplary first process accordingto the first embodiment;

FIG. 6 is a flowchart illustrating an exemplary second process accordingto the first embodiment;

FIG. 7 is a flowchart illustrating an exemplary first process accordingto a second embodiment;

FIG. 8 is a flowchart illustrating an exemplary second process accordingto the second embodiment;

FIG. 9 is a schematic of an exemplary simulation result representing areception characteristic of a demodulator apparatus according to thesecond embodiment;

FIG. 10 is a flowchart illustrating an exemplary demodulation processaccording to a fifth embodiment;

FIG. 11 is a flowchart illustrating an exemplary third process accordingto the fifth embodiment;

FIG. 12 is a flowchart illustrating an exemplary fourth processaccording to the fifth embodiment; and

FIG. 13 is a schematic of an exemplary communication apparatusimplementing the functions of the demodulator apparatus.

DESCRIPTION OF EMBODIMENTS

Preferred embodiments of the present invention will be explained withreference to accompanying drawings. The embodiments described below arenot intended to limit the scope of the technology according to theembodiment in any way. The embodiments may be combined as appropriate,within the scope in which processes do not contradict each other.

Overview of Communication System 10

FIG. 1 is a schematic of an exemplary communication system 10. In thecommunication system 10, a transmitter device 11 and a receiver device12 exchange information bits over a wireless channel. A processperformed by each of these devices will now be explained briefly.

Process Performed by Transmitter Device 11

The transmitter device 11 includes an encoder 110, a modulation symbolmapping unit 111, and a MIMO transmitter 112. The encoder 110 convertsan input information bit sequence into an encoded bit sequence byerror-correction-encoding the information bit sequence. The modulationsymbol mapping unit 111 maps the encoded bit sequence to signal symbolsby modulating the bit sequence in units of a specified number of bits. Asignal symbol (hereinafter, referred to as a “symbol”) is represented asa different point mapped to a value of the original bit in a complexplane (signal space).

The MIMO transmitter 112 divides a signal symbol sequence into aplurality of independent sequences (layers). The MIMO transmitter 112simply maps the symbol in each of the layers, or maps the result ofmultiplexing symbols in a plurality of layers to any one of a pluralityof antennas, before transmitting the symbols as a signal sequence. Thedata signal sequence mapped to an antenna is referred to as a stream.Each of the streams is converted into the form of the correspondingcarrier, and transmitted to the channels simultaneously via a pluralityof antennas at each unit time. The transmission signals transmitted perunit time are transmitted with a plurality of independent symbolsmultiplexed. In this sense, these channels are referred to as“space-multiplexed channels”.

Process Performed by Receiver Device 12

The receiver device 12 includes a MIMO receiver 120, a demodulatorapparatus 20, and a decoder 121. The MIMO receiver 120 receives data viaa plurality of reception antennas. The transmission symbols included inthe data received from the reception antennas are multiplexed symbolstransmitted via a plurality of transmission antennas.

The demodulator apparatus 20 acquires likelihood data serving assoft-decision data corresponding to each bit from the received symbol.The likelihood data is also referred to as soft-decision data, from theviewpoint of decoding. The decoder 121 performs an error correctingdecoding process using soft-decision data, and estimates the transmittedbits. The decoder 121 then outputs the estimated bits as the estimationbits.

In the description herein, because the present embodiment is notaffected by the details of layer mapping and precoding, the details willbe omitted. These processes are generally represented as transformationmatrixes applied to a stream, and are multiplications performed prior toand subsequent to a channel response matrix. Therefore, by re-definingthe channel response matrix along with these matrixes, followingformulization can be used. The term “layer” and “transmission antenna”are used as almost synonyms, hereunder, as appropriate.

Premise

Before explaining the embodiment, the items presumed in the embodimentswill now be explained. Definitions of terms are provided below in Table1.

TABLE 1 Symbol Definition N Number of Transmission Antennas M Number ofReception Antennas K Information Bit Size N_(c) Code Bit Size R_(c) =K/N_(c) Coding Rate m-QAM Modulation Mapping m_(c) Mapping Bit CountM_(c) Number of Signal Points (Constellation) (M_(c) = 2^(m) ^(c) = 4,16, 64, 256) C_(m) _(c) Signal Point (Constellation) (C_(m) _(c) = [c₁,c₂, . . . , c_(M) _(c) ]) E_(s) Total Transmission Power E_(s, N)Transmission Power Per Antenna (E_(s,) _(N) = E_(s)/N) a_(i) InformationBit Sequence (i = 1, 2, . . . , K a_(i) ∈ {0, 1}) b_(i) Code BitSequence (i = 1, 2, . . . , N_(c) b_(i) ∈ {0, 1}) b_(i) ∈ {0, 1}Amplitude Symbol Representation b _(i) ∈ {+1, −1} Amplitude SymbolRepresentation s_(j) ∈ C_(m) _(c) Transmission Symbol (m_(c) = 2, 4, 6,8 j = 1, 2, . . . N) s Transmission Symbol Vector ŝ_(j) Estimated Symbol(Without Noise) {tilde over (s)}_(j) Estimated Symbol (Including Noise)b_(k) Symbol Mapping Block (k = 1, 2, . . . , m_(c) b_(k) ∈ {0, 1})y_(i) Reception Data (i = 1, 2, . . . , M i: Reception Antenna Index) yTransmission Data Vector n_(i) Noise Signal (Dispersion: E[|n_(i)|²] =2σ² = N₀) n Noise Vector h_(ij) Channel Response Matrix (i = 1, 2, . . ., M; j = 1, 2, . . . , N) H = [h_(ij)] Matrix Representation H = RowVector Representation [h₁h₂ . . . h_(N)] L_(k) Soft-decision Data (inUnit of Symbol) (k = 1, 2, . . . , m_(c))

In Table 1, it is assumed herein that, as a prior condition, modulationmapping m-QAM is quadrature amplitude modulation (QAM) defined in a partof a tetragonal lattice space plotted two-dimensionally. In the signalpoints (constellation), c_(i) is represented as a complex number. Thereal-number component and the imaginary-number component of c_(i) arereferred to as an I channel component and a Q channel component,respectively. A symbol mapping block b_(k) is a small block of anencoded bit sequence, divided from the head of the sequence in units ofm_(c).

It is also assumed herein that the statistical properties of the channelresponse matrix are represented herein by a fading environment modelthat is generally used. It is also particularly assumed that, in thesymbol resource space of time frequencies, the amplitude varies by avery small degree within one block that is a group of symbols, and theamplitudes can be approximated as being constant within the block. Thesoft-decision data L_(k) is a quantity of a real value corresponding toa log-likelihood ratio or a metric, and has a positive or negative signand a size. The positive or negative value corresponds to ahard-decision bit. In the explanation hereunder, Hermitian transpose ofa complex matrix X is represented as X^(†) or X^(H), as appropriate.

In this embodiment, the system model is expressed as Equation (1) below,for example.

y=√{square root over (E _(s,N))}Hs+n  (1)

Modulation Scheme

Mapping a block containing a plurality of bits to a signal pointrepresented as a complex number is generally referred to as multi-levelmodulation. In the description herein, the modulation scheme is limitedto m-QAM. According to QAM, the I channel component and the Q channelcomponent are independent of each other, and follow the same mappingrule. Therefore, only the I channel will now be explained as arepresentative example.

Although there are some mapping types depending on the patterns ofmapping, assumed herein is typical Gray mapping. With Gray mapping, bitpatterns with only one different bit (may be regarded as having only onebit reversed) are assigned to signal points that are adjacent to eachother.

Standardizing the average power of symbols to one, the I(Q) component inthe QAM is expressed as follows.

s=A×m m=−(M _(c2)−1),−(M _(c2)−3), . . . −3,−1,1,3, . . . (M _(c2)−3),(M_(c2)−1)

where

$A = \frac{1}{\sqrt{a_{m_{2\;}}}}$${a_{m_{2\;}} = {{\frac{2}{3}\left( {2^{2m_{2}} - 1} \right)} = 2}},10,42,85,{{\ldots \mspace{14mu} m_{2}} = 1},2,3,4,\ldots$M_(e 2) = 2^(m₂)

m₂ and M_(c2)=√{square root over (M_(c))} are the number of bits mappedto the I(Q) component, and the number of different signal points. “A”denotes the lowest amplitude. In other words, the amplitude of thesymbols will be “A” multiplied by a positive or negative odd number.

Real Number Expression

A modulation symbol in the base band is usually expressed by a complexnumber. A channel response, a reception signal, and a noise signal arealso expressed by a complex number, accordingly. In the explanationhereunder, however, because geometric and intuitive expressions areconvenient, real-number expressions equivalent to complex numberexpressions will be used in the description below. Matrix and vectoroperations with complex numbers can be expressed as a matrix and avector with real-number elements, but twice the size.

For example, multiplication of the scalar values of complex numbers canbe expressed by the following mapping relation, as an operation giving amathematically equivalent result.

[Definitions]

1) Composite number: a=a_(r)+ja_(i) a_(r), a_(i) are real numbers

[Representations]

Following provide three different, but equivalent representations. Acombination of 1 and 2 results in 3.

1) Vector Type I

$\left. b\Leftrightarrow b \right. = \begin{bmatrix}b_{r} \\b_{i}\end{bmatrix}$

2) Vector Type II

$\left. b\Leftrightarrow b^{\prime} \right. = \begin{bmatrix}{- b_{i}} \\b_{r}\end{bmatrix}$

3) Matrix Type

$\left. a\Leftrightarrow A \right. = \begin{bmatrix}a_{r} & {- a_{i}} \\a_{i} & a_{r}\end{bmatrix}$

[Mutiplication Between Scalar Values]

1)  Matrix-Vector  Type  I c = a ⋅ b ⇔ c = Ab$A = \begin{bmatrix}a_{r} & {- a_{i}} \\a_{i} & a_{r}\end{bmatrix}$ $b = \begin{bmatrix}b_{r} \\b_{i}\end{bmatrix}$ $c = \begin{bmatrix}c_{r} \\c_{i}\end{bmatrix}$

Verification

c = a ⋅ b ${Ab} = {{\begin{bmatrix}a_{r} & {- a_{i}} \\a_{i} & a_{r}\end{bmatrix}\begin{bmatrix}b_{r} \\b_{i}\end{bmatrix}} = {\begin{bmatrix}{{a_{r}b_{r}} - {a_{i}b_{i}}} \\{{a_{i}b_{r}} + {a_{r}b_{i}}}\end{bmatrix} = c}}$

2) Matrix—Vector Type II

c = a ⋅ b ⇔ c^(′) = Ab^(′) $b^{\prime} = \begin{bmatrix}{- b_{i}} \\b_{r}\end{bmatrix}$ $c^{\prime} = \begin{bmatrix}{- c_{i}} \\c_{r}\end{bmatrix}$

Verification

${Ab}^{\prime} = {{\begin{bmatrix}a_{r} & {- a_{i}} \\a_{i} & a_{r}\end{bmatrix}\begin{bmatrix}{- b_{i}} \\b_{r}\end{bmatrix}} = {\begin{bmatrix}{{{- a_{i}}b_{r}} - {a_{r}b_{i}}} \\{{a_{r}b_{r}} + {a_{i}b_{i}}}\end{bmatrix} = c^{\prime}}}$

3) Matrix Type

c = a ⋅ b ⇔ C = AB $B = {\begin{bmatrix}b & b^{\prime}\end{bmatrix} = \begin{bmatrix}b_{r} & {- b_{i}} \\b_{i} & b_{r}\end{bmatrix}}$ $c = {\begin{bmatrix}c & c^{\prime}\end{bmatrix} = \begin{bmatrix}c_{r} & {- c_{i}} \\c_{i} & c_{r}\end{bmatrix}}$

Extension to a complex vector or matrix can be achieved by replacing theelements to a format extending the degree of freedom, as they are.Through this transformation, the system model expressed in Equation (1)is transformed into a matrix expression with real-number elements. Amatrix or a vector is expressed using one of the complex-number elementsand real-number elements, unless both of these expressions need to behandled simultaneously, and no definition for identifying each isintroduced herein. In the real-number expression, however, the size of avector or a matrix will be exactly twice of that in the complex-numberexpression. Herein it is explained that the number of antennas in thereal-number expression is twice of that in the complex-number expressionunless such an expression causes confusion. In other words, an ordinary2×2 MIMO system is equivalent to a MIMO system with 4×4 real-numberelements.

MIMO Demodulation

Reception data is assumed to be modeled in the form of Equation (1). Itis assumed herein, as a prior condition, that reception data y, achannel response matrix H, and transmission power E_(s,N) at eachantenna on the receiver end can be acquired through a measurementprocess performed by the MIMO receiver 120. MIMO demodulation is aprocess of generating soft-decision data L_(i) corresponding to a signedbit b_(i) that is mapped to a transmission symbol.

The soft-decision data mathematically corresponds to a log-likelihoodratio. A log-likelihood ratio is defined as a logarithm of the ratio ofa probability at which a transmitted bit is zero and a probability atwhich the same transmitted bit is one. A probability of a signed bitb_(i) in a transmission symbol vector s being b=0 or 1 is obtainedapproximately as a probability at which the symbol vector with thehighest probability, among the symbol vector candidates having a valuesigned bit value b_(i)=b, is the transmission symbol vector.

In this embodiment, a symbol (vector) with the highest probability isreferred to as an “optimal symbol (vector)”. Hereinafter, a symbolvector is simply referred to as a symbol, unless such an expressioncauses confusion. When the value of a symbol having the highestprobability is reversed with respect to the value b=0 or 1 of each bitin the optimal symbol, this symbol is referred to as an “opposingsymbol”. The likelihood of each of the bits is given as a logarithm ofthis probability ratio.

The general steps are as follows:

1) estimating the optimal symbol;

2) estimating the opposing symbol; and

3) generating Soft-Decision Data.

Distinguishing Soft-Decision and Hard-Decision

Generally speaking, when we talk about “MIMO demodulation”, wedistinguish if the output result is “soft-decision data” or“hard-decision data”. In a wireless communication system using MIMO, adata channel with a high transmission rate generally follows the systemmodel illustrated in FIG. 1. In other words, error-correcting encodingis performed before the modulation symbol mapping, and an errorcorrecting decoding process is performed on the receiver side. In thismanner, a more reliable receiving process can be implemented in badwireless propagation environments. To implement a highly reliable androbust decoding process, “soft-decision data” corresponding to each bitis used as input data. The definition of the soft-decision data andhard-decision data used herein will now be explained.

1) Soft-Decision Data

Soft-decision data is data including an estimation of a bit and thereliability of the estimation.

2) Hard-Decision Data (Bit)

In the description herein, hard-decision data represents the bitestimation in the soft-decision data. A symbol including bitsrepresented as hard-decision bits, in the unit of a modulation mappingsymbol (or vector), is referred to as a “hard-decision symbol”. When ahard-decision symbol is acquired as a result of an optimal demodulationprocess, the hard-decision symbol is referred to as the “optimalsymbol”.

Demodulation schemes generally used are classified into following twocategories.

(1) Maximum Likelihood Detection (MLD)

MLD exhibits good properties, but imposes a high computational load.

An exemplary scheme for reducing the computational load is a schemeusing partial selection.

Specific known examples are sphere decoding (SD) and QRM-MLD.

(2) Linear Detection

Linear detection exhibits inferior properties than MLD, but imposes lesscomputational load.

As an exemplary scheme with improved properties is a scheme withinterference cancellation.

Specific example includes successive interference cancellation (SIC) andparallel interference cancellation (PIC).

SIC is a scheme that sequentially iterates a process of estimating thesymbol, and a process of canceling an interference component acquiredfrom the estimated symbol from the reception data, in the order at whichthe symbols are processed.

PIC is a scheme canceling symbols other than the target symbol, usingtentative symbol estimation at this point in time. With the interferencecancellation method, the computational load is large compared with theconventional linear detection, but the computational load is smallcompared with MLD and the other approaches for reducing thecomputational load of MLD.

Lattice Reduction

With MIMO, modulation symbols that are to be transmitted from aplurality of transmission antennas are multiplexed before transmission.A multiplexed signal can be considered as a large symbol. A candidatepoint of such a symbol can be interpreted as a point in a discretelattice. A “lattice” is a linear space plotted by basis vectors. Interms of mathematics, the receiving process can be formularized as amethod for identifying a point in the lattice among those representingreception signals in the space plotted by the lattice. Within thisframework, by transforming the basis vectors that define the latticeappropriately, the properties resultant of the linear detection can beimproved.

Lattice reduction is developed to achieve “properties nearer to theproperties achieved by MLD, using the linear detection technology”,toward the end of acquiring the “optimal symbol” (for example, see H.Yao and G. Wornell, “Lattice-Reduction-Aided Detectors for MIMOCommunication Systems”, in IEEE Proc. Globecom, Taipei, Taiwan, Nov.17-21, 2002).

Therefore, from the standpoint of MLD, lattice reduction can beconsidered as an approach for acquiring properties that are equivalentto the property achieved by MLD, while reducing the computational loadof MLD. By contrast, from the viewpoint of linear detection, latticereduction can be considered as an approach for achieving hard-decisionresults with better properties than those achieved with conventionallinear detection, but with a computational load equivalent to that ofthe conventional linear detection. Therefore, application of latticereduction to a conventional demodulation scheme can be considered asfilling the gap between the properties and the computational load, inthe trade-off relation between the two representative schemes that areMLD and linear detection.

D. Wubben et al., demonstrated that is correct for “hard-decision”. For“soft-decision”, however, there is a problem. There is no known way toacquire soft-decision data with linear detection in the lattice-reducedbasis. By contrast, MLD is capable of acquiring soft-decision data inthe lattice-reduced basis. For example, in QRM-MLD that is aconventional approximating MLD-based approach, by using latticereduction transformation and by performing QRM-MLD in the basis appliedwith transformation, property deterioration can be suppressed even witha reduced number of candidates. In this manner, the computational loadof the MLD can be reduced.

Adoption of this approach is only effective, however, in limitedenvironments. For example, when the fading environment is static, or“quasi-static”, which means that variations in the channels aresufficiently low, the effect described above can be achieved. Suchenvironments are, however, not a special environment, but are rathertypical environments that are found when the transmission rate is high.

Details of Lattice Reduction

In the description below, real-number expressions will be used. Areception signal can be expressed as, when there is no additional noisecomponent, as follows.

y=Hs=h ₁ s ₁ +h ₂ s ₂ + . . . +h _(N) s _(N)  (2)

To keep the expression simple, the transmission power is standardized toone (it may be understood that the transmission power will be redefinedby including the power as a scale coefficient to the channel or asymbol). As long as the column vectors h_(i) are linearly independentfrom one another, the equation above is established as a definitionalmathematical equation in a linear space. Assuming the transmissionsymbol s_(i) takes only an integer, in particular, possible values ofthe reception signal vector y resultant of this operation can berepresented as a lattice point having h_(i) as basis vectors. In generalenvironments where there is some noise, the measurement of the receptionsignal will be plotted at a position offset from the lattice point,being offset by a noise vector. Based on this understanding, the MIMOdemodulation process can be generalized as a process of “identifying apoint defined as a transmission symbol in the lattice from a receptionsignal”.

The mathematical expression of a specific given lattice is not limitedto Equation (2) described above. A vector defined as a sum of basisvectors corresponds to a lattice point, and therefore, even whenlinearly independent N points are selected freely, the N points canserve as a basis. Denoting this transformation matrix as T, the samelattice can be expressed as following Equation (3).

y=HTT ⁻¹ s={tilde over (H)}z={tilde over (h)} ₁ z ₁ +{tilde over (h)} ₂z ₂ + . . . +{tilde over (h)} _(N) z _(N)  (3)

where

{tilde over (H)}=HT  (4)

z=T ⁻¹ s  (5)

This is referred to as “lattice reduction transformation”.

Lattice reduction transformation is transformation bringing the basisvectors closer to a relation in which the vectors are perpendicular toeach other as much as possible. FIG. 2 is a schematic illustrating anoverview of an exemplary lattice reduction transformation. In FIG. 2,the white circles represent lattice points. The points correspond to thepossible values of the reception signal, when a transmitted modulationsymbol is received at the receiver with no noise component. The leftdiagram in FIG. 2 is a representation of an original lattice basis thatis defined by a channel definition, and illustrates a highly correlatedexample. The right diagram illustrated in FIG. 2 is resultant ofselecting another basis vector pair that is closer to a relation inwhich the vectors are perpendicular to each other, by applying thelattice basis transformation to the lattice illustrated on the leftdiagram.

In the lattice reduction transformation, a basis transformation matrixand the inverse matrix of the basis transformation matrix arecalculated. Because specific algorithms for calculating the basistransformation matrix and its inverse matrix do not have any impact onthe technology according to the embodiment, it is assumed herein thatthe basis transformation matrix and its inverse matrix are acquiredefficiently using some kind of method, for each of the channels. Forexample, the basis transformation matrix and its inverse matrix can beacquired for each channel using Lenstra-Lenstra-Lovasz (LLL) algorithmthat is widely known to be a suboptimal. The LLL algorithm is disclosedin detail in D. Wubben et al., mentioned earlier, for example.

Numerical Handling of Lattice Point

As mentioned earlier, a transmission symbol is represented as a latticepoint. Although it is mathematically sufficient, a lattice point isrepresented as a specific numeric value, in order to allow an algorithmto actually handle the lattice point. Each symbol vector component inthe original lattice basis is the real-number component of amulti-valued modulation symbol. To express this symbol vector componentmore specifically, including the amplitude and the power, the componentis expressed as follows.

s _(i) =A _(e) u _(i) u _(i)=−(M _(c2)−1),−(M _(c1)−3), . . . −3,−1,1,3,. . . (M _(c2)−3),(M _(c2)−1)

i=1, 2, . . . , N

The vector representation will be as follows.

s=A _(e) u

Where A_(e) is represented as follows.

A _(e)=√{square root over (E _(s,N))}A

In a system model, it is possible to keep the properties unaffected evenif an appropriate known constant vector is added or constant scaling isapplied to the symbol “s”, as long as the reception data is transformedsimultaneously. Using this advantage, the symbol s is transformed in thefollowing manner that the lattice point can be handled more easily.

$\begin{matrix}{s = \left. {A_{e}u}\rightarrow s^{\prime} \right.} \\{= \frac{s + {{A_{e}\left( {M_{2c} - 1} \right)}1}}{2}} \\{= {A_{e}u^{\prime}}}\end{matrix}$ u_(i)^(′) = 0, 1, …  , M_(c 2) − 2, M_(c 2) − 1

1 is a vector having all one elements.

In the description below, to avoid confusion by increasing the number ofunnecessary definitions of variables, the right-hand side is simplyreferred to as “s”. A symbol point “z” resultant of the latticereduction is re-defined by Equation (5).

Generation of Soft-Decision Data with MMSE

A process of generating soft-decision data with MMSE will now beexplained. Soft-decision data is generated using MMSE following thesteps below, as an example.

1) Estimate Optimal Symbol

Use the symbol value estimated with MMSE as the optimal symbol.

2) Estimate Opposing Symbol

Run independent Full-MLD on each of the layers of the reception signalacquired in a filter output representation at Step 1).

3) Generate Soft-Decision Data

Generate soft-decision data based on the difference between thelikelihood of zero and the likelihood of one for each bit acquired fromFull-MLD having been performed for each layer along the process at step2).

Principles of Symbol Estimation with MMSE

Based on statistical properties, a filter coefficient matrix W isdetermined in such a manner that the target signal is retained but thenoise signal component is reduced in each of the layers in the outputfrom the linear filter transformation applied to the reception signal“y”. In MMSE, the filter coefficient matrix W is calculated in such amanner that the root mean square of the estimation error in theestimated symbol is minimized. The root mean square J of the estimationerror of the estimated symbol is expressed by the following equation,for example.

J=E[∥s−Wy∥ ²]

Where E[] denotes the expectation of an additional noise “n” (see Table1).

The basic formula acquired as a result is as described below.

Definitions

1) Transmission Symbol: s Filter Output (Tentative Estimation): {tildeover (s)}

Estimated Symbol Value: ŝ

2) Reception Signal: y

3) Weight Coefficient Matrix: W=[w₁ ^(†), . . . , w_(N) ^(†)]^(T)4) Autocorrelation Matrix: R_(yy)=E[yy^(†])5) Correlation Matrix: R_(ys)=E[ys^(†)]=[z₁, . . . , z_(N)]

-   -   z₁=E[ys_(i)*]

Formulas

$\overset{\sim}{s} = {{Wy} = \begin{bmatrix}w_{1}^{\dagger} \\\vdots \\w_{N}^{\dagger}\end{bmatrix}}$ $y = {\left. \begin{bmatrix}{w_{1}^{\dagger}y} \\\vdots \\{w_{N}^{\dagger}y}\end{bmatrix}\Rightarrow{\overset{\sim}{s}}_{j} \right. = {w_{j}^{\dagger}y}}$$W = {{R_{sy}^{\dagger}R_{yy}^{- 1}} = \begin{bmatrix}z_{1}^{\dagger} \\\vdots \\z_{N}^{\dagger}\end{bmatrix}}$ $R_{yy}^{- 1} = {\left. \begin{bmatrix}{z_{1}^{\dagger}R_{yy}^{- 1}} \\\vdots \\{z_{N}^{\dagger}R_{yy}^{- 1}}\end{bmatrix}\Rightarrow w_{j}^{\dagger} \right. = {{z_{j}^{\dagger}R_{yy}^{- 1}w_{j}} = {R_{yy}^{- 1}z_{j}}}}$

The process of generating soft-decision data using MMSE will now beexplained.

1) Generate Weight Matrix

1-1) Correlation Matrix Operation

R _(yy) =E[yy ^(†) ]=E _(s,N) HH ^(†) +N ₀ I _(M)

R _(ys) =E[ys ^(†) ]=E _(s,N) H

1-2) Weight Matrix

W=E _(s,N) H ^(†)(E _(s,N) HH ^(†) +N ₀ I _(M))⁻¹ =H ^(†)(HH ^(†)+Γ⁻¹ I_(M))⁻¹

where Γ=E_(s,N)/N₀

As a mathematically equivalent formula, the weight matrix W can also beexpressed as follows.

W=(H ^(†) H+Γ ⁻¹ I _(N))H ^(†)

2) Estimate Soft-Decision Symbol

2-1) Multiply Weight

{tilde over (s)}=Wy=Ls+Wn

{tilde over (s)} _(j) =w _(j) ^(†) y

2-2) Estimate Amplitude Division

L=WH=H ^(†)(HH ^(†)+Γ⁻¹ I _(M))⁻¹ H where Γ=E _(s,N) /N ₀

$y_{j}^{\prime} = \frac{{\overset{\sim}{s}}_{j}}{L_{jj}}$

2-3) Calculate Dispersion of Effective Noise Components

Z=Diag(WW ^(†))

M=Diag(LL ^(†))

$\sigma_{j}^{2} = {\frac{1}{L_{jj}^{2}}\left( {M_{jj} - L_{jj}^{2} + {\Gamma^{- 1}Z_{jj}}} \right)}$

Where Diag(X) represents a matrix containing only the diagonal elementsof the matrix X.

3) Perform MLD in Unit of Symbol

3-1) Generate Replica

ŷ′=s _(j) s _(j) εC _(M) _(c)

3-2) Perform Metric Operation

${L\left( s_{j} \right)} = {{\frac{1}{\sigma_{j}^{2}}{{y^{\prime} - \hat{y^{\prime}}}}^{2}} = {{L_{I}\left( s_{j,I} \right)} + {L_{Q}\left( s_{j,Q} \right)}}}$${L_{I}\left( s_{j,I} \right)} = {\frac{1}{\sigma_{j}^{2}}\left( {y_{I}^{\prime} - \hat{y_{I}^{\prime}}} \right)^{2}}$X = I, Q

3-3) Retrieve for Minimum Value

${\hat{s}}_{j,X} = {\arg {\min\limits_{s_{j} \in C_{M_{c}}}{L_{X}\left( s_{j,X} \right)}}}$X = I, Q

Map the odd-numbered bit and the even-numbered bit of the mapping bitsto I and Q, respectively.

ŝ _(j,I) →u _(j,I)(ŝ _(j,I)=(û _((j-1)×m) _(c) ₊₁ ,û _((j-1)×m) _(c) ₊₃. . . ,û _((j-1)×m) _(c) _(+m) _(c) ⁻¹)

ŝ _(j,Q) →u _(j,Q)(ŝ _(j,Q))=(û _((j-1)×m) _(c) ₊₁ ,û _((j-1)×m) _(c) ₊₄. . . ,û _((j-1)×m) _(c) _(+m) _(c) )

L _(k)(û _(k))=L _(j,X)(ŝ _(j,X))

4) Retrieve for Smallest Value of Opposing Bits of Respective Bits

Perform following operation to k=(j−1)×m_(c)+1, . . . ,(j−1)×m_(c)+m_(c).

Opposing Bit of Estimated Bit: û₁ ^(c)=1−û₁

${\hat{s}}_{k} = {\arg {\min\limits_{{s_{j,X} \in {C_{M_{c,X}}:\mspace{14mu} b_{k}}} = {\hat{u}}_{k}^{c}}{L_{X}\left( s_{j,X} \right)}}}$L_(k)(û_(k)^(c)) = L_(j, X)(ŝ_(k))

5) Calculate Posteriori Likelihood

L _(k)=−(L _(k)(0)−L _(k)(1))/2

MMSE Turbo Equalizer

Let us now consider an extension of MMSE under an assumption that aprior probability is assigned to the transmission symbol. A blockcorresponding to a unit in which MMSE process is performed is hereinreferred to as a “component demodulation process”. The componentdemodulation process is a process of receiving an input of likelihooddata and outputting likelihood data that improves the properties. Theproperties can be improved by repeating this process. Such a process isgenerally referred to as “turbo equalizer”. An MMSE-based extensionacting as the component demodulation process is specifically referred toas an “MMSE turbo equalizer”. The MMSE turbo equalizer is furtherclassified into “Soft-MMSE” and “Hard-MMSE”, depending on how the priorprobability is used.

Soft-MMSE

By taking the prior probability into account, MMSE principle formulamentioned above is corrected. The point in this correction is that,because the meaning of the expectation operation E[] is corrected, themeasured quantities obtained from the operation are also corrected. Inthis case, the expectation operation is extended so that the expectationtakes the prior probability of a given transmission symbol into account,in addition to the additional noise. The prior probability is acquiredfrom the log-likelihood ratio. The detailed descriptions will now beprovided.

Principle of Symbol Estimation through Soft-MMSE

Definitions

1) Expectation from Prior Probability

Let us assume herein that P(x) denotes the prior probability. Anexpectation E[X] of a measured quantity X, which is a function of themeasurement x, is expressed as follows.

${E\lbrack X\rbrack} = {\sum\limits_{x}\; {{X(x)}{P(x)}}}$

2) Correlation Function

Cov(x,y)=E[xy ^(H) ]−E[x]E[y ^(H)]

Cov(x,y)=E[xy*]−E[x]E[y*]

Formula

{tilde over (s)}=Wy+b=s+W(y−Hs )  (6)

Where

s=E[s]

W=Cov(s,y)Cov(y,y)⁻¹ =H ^(H)(HVH ^(H)+Γ⁻¹ I _(M))⁻¹

V=Cov(s,s)=diag(σ_(s) ₁ ², . . . ,σ_(s) _(N) ²)

The n^(th) element of Equation (6) is expressed as follows.

{tilde over (s)} _(j) ={tilde over (s)} _(j) +W _(j) ^(H)(y−Hs )

It is assumed that, to acquire the estimation and the posteriorilikelihood of the n^(th) symbol, the effect of the prior probability ofthe n^(th) symbol itself is removed. Such an assumption corresponds tothe assumption below.

s _(n)=0

σ_(s) ₁ ²=1

Therefore, the following equation is finally acquired.

{tilde over (s)} _(j) =W′ _(j) ^(H)(y−Hs _(j))  (7)

where

W′ _(j) ^(H) =W _(j) ^(H)|_(σ) _(η) ₂ ₌₁ s _(j)= s | _(s) _(j) ₌₀

Probability for Logarithmic Likelihood

Definitions

1) Modulation Symbol Mapping: s

(b₁, . . . , b_(m))

2) Bit Probability: p_(k) (b)

Probability of Bit b_(k) Taking Value bε{0, 1}

3) Symbol Probability: p(s)

4) Logarithmic Likelihood Ratio: L_(k)

Logarithmic Likelihood Ratio of Bit b_(k)

Formulas

1) Bit Probability

${p_{k}\left( {b = 0} \right)} = \frac{^{L_{k}/2}}{^{L_{k}/2} + ^{{- L_{k}}/2}}$${p_{k}\left( {b = 1} \right)} = \frac{^{{- L_{k}}/2}}{^{L_{k}/2} + ^{{- L_{k}}/2}}$

2) Symbol Probability

${p(s)} = {\prod\limits_{k = 0}^{m - 1}\; {p_{k}\left( b_{k} \right)}}$

Hard-MMSE

Hard-MMSE can be considered as a special case of Soft-MMSE. In otherwords, Hard-MMSE specifies that a hard-decision symbol at one point intime is selected at the probability of one, as the prior probability. Inthis manner, an expectation of a symbol is matched with a “hard-decisionsymbol” acquired at that point in time, and the dispersion σ_(s) ² ofthe symbol will be one. Therefore, Formula (7) can be expressed asfollows.

{tilde over (s)} _(j) =w _(j) ^(H)(y−Hŝ _(j))

where

ŝ _(j) =ŝ| _(ŝ) _(j) ₌₀

Where w_(j) ^(H) denotes the column vector of the weight matrix W whenV=I (in the same manner as in the MMSE).

MMSE-SIC

MMSE-SIC is a correcting approach for improving the properties achievedby MMSE. MMSE-SIC corresponds to the Vertical-Bell Laboratories LayeredSpace-Time (V-BLAST), and the description below is provided under thisassumption. V-BLAST supports Hard-MMSE, and extension to supportSoft-MMSE is also possible. Hereinafter, MMSE-SIC supporting Hard-MMSEis referred to as MMSE-Hard-SIC (MMSE-HSIC), and MMSE-SIC supportingSoft-MMSE is referred to as MMSE-Soft-SIC (MMSE-SSIC).

MMSE-HSIC

To begin with, MMSE-HSIC performs transformation using a weight, byusing MMSE. Each layer is then processed, following the order describedlater. For the first layer, symbol estimation is performed in the samemanner as that in MMSE. For the second layer, the interference componentincluded in the reception signal component in the second layerintroduced by the symbol of the first layer is suppressed before thesymbol estimation. The symbol estimation is then performed to thereception signal with interference noise reduced. An interferencecomponent is acquired from the estimated symbol. This is referred to asa “replica”. In the same manner, for the (i+1)^(th) layer and the layersthereafter, an interference component is removed from the receptionsignal using the replica generated from the i^(th) estimated symbol andthe preceding estimated symbols, and the same symbol estimation as thatin MMSE is performed to the resultant reception signal.

It is preferable that symbols are sequentially estimated, and a symbolis selected in the descending order of the signal-to-noise ratio (SNR)every time the process is performed. The properties, however, do notalways deteriorate greatly, even when this sequence is not followedstrictly. Some schemes have also been developed to allow this order tobe determined more efficiently. “SQRD-MMSE-SIC”, which will be explainedlater, is one of the best schemes.

To simplify the description, it is assumed hereunder that someappropriate scheme is used to determine the order, and a layer selectedthrough some appropriate matrix replacement is always replaced with thelast index of the unprocessed layers. Therefore, it is assumed hereinthat the layers are processed in the order of j=N, N−1, . . . , 1.

Specific Steps

1) Process Layer N

Acquire the same weight as that used in MMSE, and multiply the weight tothe reception signal. Acquire soft-decision data of the layer Ncomponent in the reception signal using MLD.

2) Process Layers i=N−1, . . . , 1

2-1) Generate Replica

Use estimated symbols (hard-decision symbols) corresponding to thelayers up to the layer i+1 as replica symbols.

2-2) Canceling Interference

$\begin{matrix}{{\overset{\sim}{y}}^{(i)} = {{{\overset{\sim}{y}}^{({i + 1})} - {h_{i + 1}{\hat{s}}_{i + 1}}} = {y - {\sum\limits_{j = {i + 1}}^{N}{h_{j}{\hat{s}}_{j}}}}}} & (8)\end{matrix}$

2-3) Perform MLD

Based on the resultant reception data ý^((i)), acquire the same weightas that in MMSE, and multiply the weight to the reception signal.Acquire soft-decision data of the layer i component in the receptionsignal, using MLD.

Remark

Equation (8) can be expressed as a channel model as follows.

{tilde over (y)} ^((i)) =H ^((i)) s ^((i)) +n ^((i))

Where H^((i))=[h₁ h₂ . . . h_(i)], s^((i))=[s₁, s₂, . . . , s_(i)]^(T)

n^((i)) is a noise component defined by {tilde over(y)}^((i))−H^((i))s^((i)).

Therefore, MMSE for a virtual channel response matrix H^((i)) can beapplied to the i^(th) layer.

MMSE-SSIC

MMSE-SSIC is generally the same as “MMSE-HSIC”. The difference is that,while MMSE-HSIC uses MMSE in the symbol estimation for the layer i=N−1and the layers thereafter, MMSE-HSIC uses Soft-MMSE instead. At thistime, mapped to the “prior probability” that is a prior condition is a“posteriori log-likelihood ratio” obtained for the layers up to the(i+1)^(th) layer.

MMSE-PIC

MMSE-PIC is a correcting approach for improving the properties achievedby MMSE. In the same manner as MMSE-SIC, MMSE-PIC is a scheme that usesan MMSE algorithm given with a prior probability. MMSE-PIC includes twodifferent schemes for “Hard-MMSE” and “Soft-MMSE”, respectively, thatare referred to as “MMSE-HPIC” and “MMSE-SPIC”, respectively. While SICis a scheme that performs the process sequentially in units of a layer,PIC performs the process using the posteriori probability up to aspecific point in time, as the prior condition for the layers other thanthe target layer.

MMSE-HPIC

In the component demodulation process in MMSE-HPIC, Hard-MMSE is appliedto all of the layers j=1, . . . , N. Because the result of the processof one layer does not affect the process of the other layers, the layerscan be processed in any order. MMSE-HPIC will now be explained indetail.

General Steps

Process the layers in the order of j=1, . . . , N.

Iterate the component demodulation process by a specified number oftimes.

Execute MMSE as an Initial Process before the iteration, to estimate thesymbol of each of the layers.

Given a prior probability as a prior condition, iterate the componentdemodulation process described below.

Use Hard-MMSE to estimate the symbol for each of the layers.

In other words, generate a replica of the current estimated symbol, andremove the replica from the reception data, so that the interferencecomponent of the other layers is removed from the vector of thereception data.

Apply MMSE to the resultant reception signal.

Specific Steps

Initial Process

1) Apply MMSE

Acquire a log-likelihood ratio (soft-decision data) for each bit of thesymbol component for the corresponding layer by applying MMSE describedabove to the reception data y and the channel response matrix H.

Component Demodulation Process

Iterate the following process for a specified number of times.

1) Acquire Symbol Estimation

Use hard-decision symbol resultant of the initial process or theprevious component demodulation process as the estimated symbol ŝ.

2) Perform Replica Generation and Cancellation

Perform the following operation for the layers j=1, . . . , N,sequentially.

${\overset{\sim}{y}}_{j} = {y - {\sum\limits_{\underset{l \neq j}{l = 1}}^{N}{h_{l}{\hat{s}}_{l}}}}$

3) Generate Soft-Decision Data

Perform the following operation for the layers j=1, . . . , N,sequentially.

Generate likelihood by applying MMSE to the following input data {tildeover (y)}_(j), in the antenna configuration of 1×M.

MMSE-SPIC

MMSE-SPIC is a process corresponding to MMSE-HPIC but with Hard-MMSEreplaced with Soft-MMSE.

Specific Steps

Initial Process

1) Apply MMSE

Acquire a log-likelihood ratio (soft-decision data) for each bit of thesymbol component of the corresponding layer by applying MMSE describedabove to the reception data y and the channel response matrix H.

Component Demodulation Process

Iterate the following process for a specified number of times.

1) Acquire Symbol Estimation (Generate Expectation)

Acquire the expectation of the symbol s by mapping the log-likelihoodratio resultant of the initial process or the previous componentdemodulation process to the prior probability.

2) Perform Replica Generation and Cancellation

Perform the following operation for the layers j=1, . . . , N,sequentially.

${\overset{\sim}{y}}_{j} = {y - {\sum\limits_{\underset{l \neq j}{l = 1}}^{N}{h_{l}{\overset{\_}{s}}_{l}}}}$

3) Generate Soft-Decision Data

Perform the following operation for the layers j=1, . . . , N,sequentially.

Generate likelihood by applying MMSE to the following input data {tildeover (y)}_(j), in the antenna configuration of 1×M.

QRD-LD-SIC

QRD-LD-SIC, to begin with, performs QR decomposition to the channelresponse matrix, and then performs the coordinate conversion to thereception signal vectors using the orthogonal matrix resultant of the QRdecomposition. In this manner, QRD-LD-SIC can remove a half of theinterference components of other symbols from the channel model of thereception signal vectors. QRD-LD-SIC is a scheme that performs thecombination of linear detection and SIC to the layers from the one witha smaller inter-symbol interference. The linear detection may be zeroforcing (ZF) or MMSE, and these implementations are referred to as“QRD-ZF-SIC” and “QRD-MMSE-SIC”, respectively.

QRD-ZF-SIC

QRD-ZF-SIC is a scheme that QR-decomposes the channel response matrix,and transforms the reception signal using the orthogonal matrixresultant of the QR-decomposition. To simplify the description, it isassumed herein that the process is performed in units of a layer, withthe order of the matrix replaced to a predetermined processing order.

Specific Steps

Pre-Process

1) Perform QR Decomposition

Perform QR decomposition to the channel response matrix.

H=QR

Where Q is a unitary matrix satisfying the following relation.

Q ^(H) Q=1

R is an upper triangular matrix including the elements as follows.

$R = \begin{bmatrix}r_{11} & \ldots & r_{1N} \\\; & \ddots & \vdots \\0 & \; & r_{NN}\end{bmatrix}$

2) Perform Q-transformation of Reception Data

Linear-transform the reception signal vectors with the orthogonal matrixQ. As a result, the channel response matrix is transformed into thematrix R.

y′=Q ^(H) y=Rs+n′ n′=Q ^(H) n

The matrix R with the components is expressed as follows.

$y_{j}^{\prime} = {\sum\limits_{l = j}^{N}{r_{ji}s_{i +}n_{j}^{\prime}}}$

Main Process

1) Process Layer j=N

The channel model for the reception data is expressed as follows.

y′ _(j) =r _(jj) s _(j) +n′ _(j)

1-1) Perform Synchronous Detection

{tilde over (s)} _(j) =r _(jj) ⁻¹ y′ _(j)

1-2) Generate Soft-Decision Data

Acquire the likelihood of each bit by applying one-symbol MLD to {tildeover (s)}_(j).

1-3) Acquire Symbol Estimation

i) Acquire Hard-Decision

Select the nearest symbol.

ŝ _(j) =Q({tilde over (s)} _(j))

Where Q() is a selection function (also referred to as a “quantizingfunction”).

ii) Acquire Soft-Decision

Generate the symbol probability from the likelihood, and calculate theexpectation.

ŝ=s _(j)

2) Process Layers j=N−1, . . . , 1

2-1) Perform Replica Generation and Cancellation

$y_{j}^{\prime {(j)}} = {{y_{j}^{\prime} - {\sum\limits_{l = {j + 1}}^{N}{r_{ji}{\hat{s}}_{i}}}} = {{r_{jj}s_{j}} + n_{j}^{\prime {(j)}}}}$

2-2) Perform Synchronous Detection

{tilde over (s)} _(j) =r _(jj) ⁻¹ y′ _(j)

2-3) Generate Soft-Decision Data

Acquire the likelihood of each bit, by performing one-symbol MLD to{tilde over (s)}_(j).

2-4) Acquire Symbol Estimation

i) Acquire Hard-Decision

Select the nearest symbol.

ŝ _(j) =Q({tilde over (s)} _(j))

ii) Acquire Soft-Decision

Generate the symbol probability from the likelihood, and calculate theexpectation.

ŝ _(j) =s _(j)

QRD-MMSE-SIC

QRD-MMSE-SIC is a scheme for achieving a balance between alleviating theamplification of the noise component introduced by ZF, and simplifyingthe SIC process with QR decomposition. Because QR decomposition is used,“extended channel response matrix” is introduced. In this manner, symbolestimation with MMSE can be replaced to a format that is the same asthat of ZF, as specified below.

Definitions

1) Extended Channel Response Matrix: H

$\underset{\_}{H} = \begin{bmatrix}H \\{\sqrt{N_{0}}I_{N}}\end{bmatrix}$

2) Extended Reception Symbol Vector: y

$\underset{\_}{y} = \begin{bmatrix}y \\0_{N}\end{bmatrix}$

3) Extended Noise Vector: n

$\underset{\_}{n} = \begin{bmatrix}n \\{\sqrt{N_{0}}s}\end{bmatrix}$

4) QR Decomposition 4-1) Q-Matrix: Q 4-2) R-Matrix: R 5) Pseudo-Inverse(PI) Matrix of Extended Channel Response Matrix: H⁺ 5-1) BasicDefinitions

H ⁺=(H ^(H) H)⁻¹ H ^(H)

H ⁺ H=I _(N)

H is not a square matrix, but is a (M+N) N matrix. Although there is noordinary inverse matrix, a Penrose-Moore pseudo inverse matrix definingthese characteristics can be defined.

5-2) QR Decomposition

By QR-decomposing H, H⁺ is expressed as follows.

H ⁺ =R ⁻¹ Q ^(H)

Formula

1) Channel Model

y=Hs+n

2) Synchronous Detection

{tilde over (s)}=H ⁻ y

Remark

{tilde over (s)}=H ⁺ y=(H ^(H) H)⁻¹ H _(H) y=Wy

Where W matches weight for MMSE.

SQRD-LD-SIC

QRD-LD-SIC has a disadvantage that the computational load increases,considering that the order in which the layers are processed isoptimized using the SNR of the estimated symbols, as an index. InSQRD-DL-SIC, to address this issue, the order in which the layers areprocessed is determined in advance. As the way in which the processingorder is determined, the order of bases in the QR decomposition isdetermined in the ascending order of the power, and the layers areprocessed in the reversal of the determined order. Such QR decompositionis referred to as “Sorted-QRD (SQRD)”. In this manner, the processingorder is determined merely by running QR decomposition once, and the SICprocess can be performed completely independently from the process ofdetermining processing order. The computational load is thereforereduced dramatically. Either SSIC or HSIC may be used as SIC in the SQRDscheme. QRD-MMSE-SIC using the SQRD scheme will be referred to asSQRD-MMSE-SIC.

SQRD-MMSE-HSIC

The basic steps are the same as those in “SQRD-MMSE-SIC” in the originalbasis demodulation scheme, within the scope of optimal symbolestimation. The lattice reduction is performed in the manner describedabove as a generally available example. While SQRD-MMSE-HSIC isSQRD-MMSE, SQRD-MMSE-HSIC can be an LLL algorithm that is based on theextended channel response matrix. At the same time, SQRD-MMSE-HSIC canalso be understood as one of QR decomposition schemes. The LLL algorithmis an algorithm that selects basis vectors from those with a “smaller”size, and matches how SQRD determines the processing order. Therefore,we can use the order determined by the LLL algorithm as the processingorder.

Specific Steps

Pre-Process

The following pre-process is performed once for each block that is aprocessing unit that can be rendered as having substantially the samechannel value.

1) Perform Lattice Basis Transformation and QR Transformation

Perform lattice reduction transformation using the LLL algorithm, forexample.

{tilde over (H)}=HT

Acquire a lattice reduction transformation matrix and its inversematrix.

It is assumed herein, as an example, that the lattice reduction isperformed with the channel response matrix QR-transformed. Therefore,using QR decomposition of the following original basis,

H=QR

as an initial condition, acquire the transformed QR decomposition belowdirectly with a lattice reduction algorithm.

{tilde over (H)}={tilde over (Q)}{tilde over (R)}

<Main Process>

The following process is applied to all of the symbols in the block.

1) Linear-Transform Reception Signal Vectors Using Orthogonal Matrix Q

Through this process, the extended channel response matrix istransformed into an upper triangular matrix.

y′={tilde over (Q)} ^(H) y={tilde over (R)}z+η η={tilde over (Q)} ^(H) n

2) Process Layer j=N

The channel model for the reception data is expressed as:

y′ _(j) =r _(jj) z _(j)+η_(j)

2-1) Perform Synchronous Detection

{tilde over (z)}_(j) =r _(jj) ⁻¹ y′ _(j)

2-2) Generate Soft-Decision Data

Acquire the likelihood of each bit, by performing one-symbol MLD to{tilde over (s)}_(j).

2-3) Acquire Symbol Estimation

The nearest symbol is selected as the estimated symbol.

{circumflex over (z)} _(j) =Q({tilde over (z)} _(j))

3) Process Layers j=N−1, . . . , 1

3-1) Perform Replica Generation and Cancellation

$y_{j}^{\prime {(j)}} = {{y_{j}^{\prime} - {\sum\limits_{i = {j + 1}}^{N}{{\underset{\_}{r}}_{ji}{\hat{z}}_{i}}}} = {{{\underset{\_}{r}}_{jj}z_{i}} + \eta_{j}^{(j)}}}$

Where η_(j) ^((j)) is a noise component defined by η_(j) ^((j)=y′) _(j)^((j)−r) _(jj)z_(i).

3-2) Perform Synchronous Detection

{tilde over (z)}_(j) =r _(jj) ⁻¹ y′ _(j)

3-3) Acquire Symbol Estimation

The nearest symbol is selected as the estimated symbol.

{circumflex over (z)} _(j) =Q({tilde over (z)} _(j))

4) Perform Inverse-Transformation into Original Basis

Perform the inverse transformation into the expression in the originalbasis. The result of this inverse transformation, however, does notnecessarily correspond to the modulation symbol in the original basis.Therefore, if the result exceeds the range, perform a clipping process.

4-1) Perform Inverse Transformation

ŝ=T{circumflex over (z)}

4-2) Perform Clipping

If ŝ _(i) >s _(max) =A _(e) (M _(c2)−1), then ŝ _(i) =s _(max)  (1)

If {circumflex over (s)}_(i) <s _(min)=0, then ŝ _(i)=0  (2)

[a] First Embodiment

A first embodiment will now be explained. In this embodiment, thecommunication system 10 illustrated in FIG. 1 is assumed. A morespecific example of the assumed system example is the downlink datapacket channel specified in long term evolution (LTE) and LTE-advanceddefined by third generation partnership project (3GPP). Assumed as thedownlink data packet channel is a physical downlink shared channel(PDSCH), for example.

FIG. 3 is a block diagram illustrating an exemplary demodulatorapparatus 20. The demodulator apparatus 20 includes a first transformingunit 21, a first calculating unit 22, a second transforming unit 23, anda second calculating unit 24.

The first transforming unit 21 decomposes the channel response matrixinto the product of an orthogonal matrix and an upper triangular matrix.The first transforming unit 21 also calculates a lattice reductiontransformation matrix and its inverse matrix for the channel responsematrix, and applies the lattice reduction to the orthogonal matrix andthe upper triangular matrix.

The first calculating unit 22 calculates an expectation of a symbol inthe lattice-reduced basis by performing linear detection to thereception signal in the lattice-reduced basis, using the orthogonalmatrix having been applied with lattice reduction transformation. Inthis embodiment, the first calculating unit 22 outputs a hard-decisionsymbol as the expectation of the symbol. In this embodiment, the firstcalculating unit 22 performs SQRD-MMSE-HSIC as the linear detection inthe lattice-reduced basis, as an example.

The second transforming unit 23 inversely transforms the symbolexpectation calculated by the first calculating unit 22 from thelattice-reduced basis into the original basis.

The second calculating unit 24 performs the interference cancellationmethod in the symbol expectation having been inversely transformed bythe second transforming unit 23, in the original basis, and calculatesthe soft-decision data. In this embodiment, the second calculating unit24 performs MMSE-HPIC as the interference cancellation method in theoriginal basis, as an example.

Specific Steps

Pre-Process

The first transforming unit 21 performs this pre-process once, forexample, to a block that is a processing unit that can be rendered ashaving substantially the same channel value.

1) Perform Lattice Basis Transformation and QR Transformation

The first transforming unit 21 performs the lattice reduction describedbelow using the LLL algorithm, based on the channel response matrix Hreceived from the MIMO receiver 120, for example, and calculates thetransformation matrix and its inverse matrix.

{tilde over (H)}=HT

The first transforming unit 21 then QR-decomposes the extended channelresponse matrix into an orthogonal matrix and an upper triangular matrixusing the LLL algorithm, for example, and performs the lattice reductionwith the extended channel response matrix QR-decomposed. The firsttransforming unit 21, therefore, executes the lattice reductionalgorithm using the QR decomposition in the original lattice below as aninitial condition.

H=QR

Where Q is the orthogonal matrix, and R is an upper triangular matrix.

The first transforming unit 21 then acquires the QR decompositionapplied with the lattice reduction transformation.

{tilde over (H)}={tilde over (Q)}{tilde over (R)}

The first transforming unit 21 then outputs the lattice reductiontransformation matrix, the inverse matrix of the lattice reductiontransformation matrix, the orthogonal matrix applied with the latticereduction transformation, and the upper triangular matrix applied withthe lattice reduction transformation to the first calculating unit 22.

Main Process

The first calculating unit 22 runs the following process to all of thesymbols in the block.

1) Linear-Transform Reception Signal Vectors Using Orthogonal Matrix

Through this process, the extended channel response matrix istransformed into an upper triangular matrix.

y′={tilde over (Q)} ^(H) y={tilde over (R)}z+η η={tilde over (Q)} ^(H)n  (9)

2) Process Layers j=N, . . . , 1

The channel model for the reception data is expressed as below.

y′ _(j) =r _(jj) z _(j)+η_(j)  (10)

2-1) Perform Replica Generation and Cancellation

When j=N, the first calculating unit 22 performs the process of replicageneration and cancellation based on the equation below.

y′ _(j) ^((j)) =y′ _(j) =r _(jj) z _(j)+η_(j)  (11)

If j<N, the first calculating unit 22 performs the process of replicageneration and cancellation based on:

$y_{j}^{\prime {(j)}} = {{y_{j}^{\prime} - {\sum\limits_{i = {j + 1}}^{N}{{\underset{\_}{r}}_{ji}{\hat{z}}_{i}}}} = {+ \eta_{j}^{(j)}}}$

Where η_(j) ^((j)) is a noise component defined by η_(j) ^((j))=y′_(j)^((j))−r_(jj)z_(i).

2-2) Perform Synchronous Detection

The first calculating unit 22 performs the synchronous detection basedon following:

{tilde over (z)} _(j) =r _(jj) ⁻¹ y′ _(j) ^((j))  (12)

2-3) Acquire Symbol Estimation

The first calculating unit 22 then makes the hard-decision based on thefollowing calculation. The first calculating unit 22 selects the nearestsymbol, and outputs the selected hard-decision symbol to the secondtransforming unit 23 as the estimated symbol.

{circumflex over (z)} _(j) =Q({tilde over (z)} _(j))  (13)

{tilde over (z)}_(j) is an estimated symbol including noise, and {tildeover (z)}_(j) is an estimated symbol not including noise, estimated inthe lattice.

3) Perform Inverse-Transformation into Original Basis

The second transforming unit 23 inversely transforms the symbolestimated by the first calculating unit 22 into the format of theoriginal lattice-reduced basis. The result of this inversetransformation, however, does not necessarily correspond to themodulation symbol in the original lattice basis. The second transformingunit 23 therefore performs a clipping process when the result exceedsthe range.

3-1) Perform Inverse Transformation

The second transforming unit 23 performs the inverse transformationbased on the equation below.

ŝ=T{circumflex over (z)}

3-2) Perform Clipping

The second transforming unit 23 performs clipping based on the equationbelow:

If ŝ _(i) >s _(max) =A _(e) (M _(c2)−1), then ŝ _(i) =s _(max)  (1)

If ŝ _(i) <s _(min)=0, then ŝ _(i)=0  (2)

4) Apply MMSE-HPIC Component Demodulation Process

The second calculating unit 24 then iterates the MMSE-HPIC componentdemodulation process by the number of times equal to k_(max), using theestimated symbol having been inversely transformed into the originalbasis by the second transforming unit 23. k_(max) is a constant definingthe number of iterations. In this embodiment, k_(max) is set to two, asan example.

In ordinary MMSE-HPIC, as described earlier, a hard-decision symbol iscalculated by the initial process, and the component demodulationprocess is executed using the calculated hard-decision symbol. Bycontrast, in the MMSE-HPIC component demodulation process according tothe embodiment, the second calculating unit 24 performs the firstcomponent demodulation process, being the first among the k_(max)iterations, using the hard-decision symbol inversely transformed intothe original basis by the second transforming unit 23. In the second andthereafter iterations among the k_(max) iterations, the secondcalculating unit 24 performs the component demodulation process usingthe hard-decision symbol calculated in the previous MMSE-HPIC componentdemodulation process.

4-1) Perform Replica Generation and Cancellation

The second calculating unit 24 performs replica generation andcancellation for each of the layers j=1, . . . , N, based on theequation below.

$\begin{matrix}{{\overset{\sim}{y}}_{j} = {y - {\sum\limits_{\underset{l \neq j}{l = 1}}^{N}{h_{l}{\hat{s}}_{l}}}}} & (14)\end{matrix}$

4-2) Generate Soft-Decision Data

For each of the layers j=1, . . . , N, the second calculating unit 24generates soft-decision data by performing MMSE described above in the1×M antenna configuration, using {tilde over (y)}_(j) as input data. Thesecond calculating unit 24 then iterates the processes explained at 4-1)and 4-2) by k times, and outputs the generated soft-decision data to thedecoder 121.

Operation of Demodulator Apparatus 20

FIG. 4 is a flowchart illustrating an exemplary demodulation processaccording to the first embodiment. Every time the MIMO receiver 120outputs reception signal data, for example, the demodulator apparatus 20initiates the demodulation process illustrated in this flowchart.

To begin with, the first transforming unit 21 determines whether thedata at the head of the resources block is output from the MIMO receiver120 (S100). If the data at the head of the resources block has not beenoutput from the MIMO receiver 120 (No at S100), the first calculatingunit 22 executes the process at Step S200.

If the data at the head of the resources block has been output from theMIMO receiver 120 (Yes at S100), the first transforming unit 21 performsthe “pre-process” described earlier. Specifically, using LLL algorithmor the like, the first transforming unit 21 performs the latticereduction transformation based on the extended channel response matrix.The first transforming unit 21 then calculates the transformation matrixand its inverse matrix.

The first transforming unit 21 then decomposes the channel responsematrix into the product of an orthogonal matrix and an upper triangularmatrix, by applying QR decomposition to the extended channel responsematrix. The first transforming unit 21 then performs the latticereduction transformation with the QR-decomposition of the extendedchannel response matrix. The first transforming unit 21 then outputs thelattice reduction transformation matrix, the inverse matrix of thelattice reduction transformation matrix, the orthogonal matrix appliedwith the lattice reduction transformation, and the upper triangularmatrix applied with the lattice reduction transformation to the firstcalculating unit 22 (S101).

The first calculating unit 22 then performs linear detection in thelattice-reduced basis for the reception signal using the orthogonalmatrix applied with lattice reduction transformation acquired byexecuting a first process which will be described later, and calculatesan expectation of the symbol in the lattice-reduced basis (S200). Thefirst process includes, among the processes of “Main Process” describedabove, “1) Linear-Transform Reception Signal Vectors using OrthogonalMatrix”, and “2) Process Layers j=N, . . . , 1”. In this embodiment, anexpectation of a symbol is a hard-decision symbol. The secondtransforming unit 23 then inversely transforms the hard-decision symboloutput from the first calculating unit 22 from the lattice-reduced basisinto the expression of the original basis (S102). The secondtransforming unit 23 then clips the hard-decision symbol exceeding apredetermined range (S103).

The second calculating unit 24 then performs the interferencecancellation method in the inversely transformed hard-decision symbol inthe original basis by executing a second process which will be describedlater, and generates soft-decision data (S300). The second calculatingunit 24 then outputs the generated soft-decision data to the decoder121. The second process includes “4) Apply MMSE-HPIC ComponentDemodulation Process” in “Main Process” described above. The demodulatorapparatus 20 then ends the process illustrated in the flowchart.

First Process

FIG. 5 is a flowchart illustrating an exemplary first process accordingto the first embodiment.

To begin with, the first calculating unit 22 sets N that is the numberof transmission antennas (the number of layers) to the variable i(S201). The first calculating unit 22 then determines whether the valueof the variable i is equal to or more than one (S202). If the value ofthe variable i is equal to or more than one (Yes at S202), the firstcalculating unit 22 then determines whether the value of the variable iis N (S203).

If the value of the variable i is N (Yes at S203), the first calculatingunit 22 linear-transforms the reception signal vectors based on Equation(9). The first calculating unit 22 then performs the process of replicageneration and cancellation based on Equation (10) (S204), and executesthe process at Step S206.

If the value of the variable i is not N (No at S203), the firstcalculating unit 22 linear-transforms the reception signal vectors basedon Equation (9). The first calculating unit 22 then performs the processof replica generation and cancellation based on Equation (11) (S205).The first calculating unit 22 then performs the synchronous detection inthe reception signal vectors having the interference componentcancelled, based on Equation (12) (S206).

The first calculating unit 22 makes the hard-decision by applying theselection function to the output of the synchronous detection, andperforms the symbol estimation (S207). The first calculating unit 22then outputs the estimated symbol to the second transforming unit 23.The first calculating unit 22 then decrements the value of the variablei by one (S208), and performs the process at Step S202 again. If thevalue of the variable i becomes less than one (No at S202), the firstcalculating unit 22 ends the first process illustrated in the flowchart.

Second Process

FIG. 6 is a flowchart illustrating an example of the second processaccording to the first embodiment.

To begin with, the second calculating unit 24 sets a variable k forcounting the number of iterations to one (S301). The second calculatingunit 24 then determines whether the value of the variable k is equal toor less than k_(max) (S302). If the value of the variable k is equal toor less than k_(max) (Yes at S302), the second calculating unit 24 setsN that is the number of transmission antennas (the number of layers) tothe variable i (S303). The second calculating unit 24 then determineswhether the value of the variable i is equal to or more than one (S304).

If the value of the variable i is equal to or more than one (Yes atS304), the second calculating unit 24 determines whether the value ofthe variable k is one (S305). If the value of the variable k is one (Yesat S305), the second calculating unit 24 selects the hard-decisionsymbol calculated by the first calculating unit 22 as the estimatedsymbol (S306). If the value of the variable k is not one (No at S305),the second calculating unit 24 selects the hard-decision symbolcalculated previously in the process of generating soft-decision data(Step S309 which will be described later) (in the previous iteration),as the estimated symbol (S307).

The second calculating unit 24 then performs the process of replicageneration and cancellation using the estimated symbol selected at StepS306 or S307, based on Equation (14) (S308). The second calculating unit24 then generates soft-decision data by performing MMSE described abovein the 1×M antenna configuration, using the reception signal vectorshaving the interference component cancelled (S309). The secondcalculating unit 24 then decrements the value of the variable i by one(S310), and performs the process at Step S304 again.

If the value of the variable i becomes less than one (No at S304), thesecond calculating unit 24 adds one to the variable k (S311), andperforms the process at Step S302 again. If the value of the variable kis greater than k_(max) (No at S302), the second calculating unit 24outputs the soft-decision data corresponding to each of the estimatedsymbols to the decoder 121, and ends the process illustrated in theflowchart.

As described above, the demodulator apparatus 20 according to thisembodiment acquires a tentative optimal symbol by performing lineardetection in the lattice-reduced basis, cancels interference in theacquired tentative optimal symbol in the original basis, and outputs thesoft-decision data. In this manner, the computational load can bereduced compared with the QRM-MLD using lattice reduction, and receptionperformance equivalent to that with QRM-MLD using lattice reduction canbe achieved.

[b] Second Embodiment

A second embodiment will now be explained. In the first embodiment, ahard-decision symbol is estimated with linear detection in thelattice-reduced basis. By contrast, this embodiment is different fromthe first embodiment in that a soft-decision symbol is estimated withlinear detection in the lattice-reduced basis. The approach according tothe embodiment for acquiring an estimation of the soft-decision symbolin the linear detection in the lattice-reduced basis is referred to asSQRD-MMSE-SSIC.

Furthermore, in this embodiment, the soft-decision symbol estimated inthe linear detection in the lattice-reduced basis is not used as acandidate the transmission symbol, but used as an expectation that iscalculated using a probability distribution as a weight. In thisembodiment, after the expectation of a symbol calculated with the lineardetection in the lattice-reduced basis is inversely transformed into theoriginal basis, likelihood data is acquired using MMSE-SPIC-basedinterference cancellation method. In order to acquire the expectation ofa optimal symbol, an expectation is acquired for the symbolcorresponding to each layer in the lattice-reduced basis. Therefore, arange of possible values is estimated, in the lattice-reduced basis, forthe symbol corresponding to each of the layers.

Specific Steps

Pre-Process

Because this pre-process is the same as that explained in the firstembodiment, an explanation thereof is omitted herein.

Main Process

1) Linear-Transform Reception Signal Vectors Using Orthogonal Matrix

Because this process is the same as that explained in the firstembodiment, an explanation thereof is omitted herein.

2) Process Layers j=N, . . . , 1

2-1) Perform Replica Generation and Cancellation

Because this process is the same as that explained in the firstembodiment, an explanation thereof is omitted herein.

2-2) Perform Synchronous Detection

Because this process is the same as that explained in the firstembodiment, an explanation thereof is omitted herein.

2-3) Acquire Symbol Estimation Range

For a layer equal to or more than j+1, the first calculating unit 22calculates a range satisfying the conditions of the value the originalsymbol can take, with an assumption of the optimal symbol at this pointin time, using the transformation equation below.

z=T ⁻¹ s

The group of symbols within the calculated range is expressed asfollows.

{tilde over (C)} _(j)

2-4) Perform Symbol Expectation Operation

The first calculating unit 22 calculates an expectation of the symbolusing the following calculation.

$\begin{matrix}{{{\overset{\_}{z}}_{j} = {\sum\limits_{z \in {\overset{\sim}{C}}_{j}}{{zp}_{j}(z)}}}{{p_{j}(z)} = \frac{^{- {L_{j}{(z)}}}}{\sum\limits_{z \in {\overset{\sim}{C}}_{j}}^{- {L_{j}{(z)}}}}}} & (15)\end{matrix}$

Equation (15) assumes that the noise has a Gaussian distribution. Where,L_(j)(z) is a metric of a candidate symbol z, and because thelattice-reduced basis is near a perpendicular relation, L_(j)(z) can beexpressed as follows.

${L_{j}(z)} = {\frac{1}{\sigma^{2}}{{z - {\overset{\sim}{z}}_{j}}}^{2}}$

3) Perform Inverse-Transformation into Original Basis

3-1) Perform Inverse Transformation

The second transforming unit 23 inversely transforms the symbolexpectation calculated by the first calculating unit 22 from thelattice-reduced basis into the original basis based on Equation below.

ŝ=T z.

3-2) Perform Clipping

Because this process is the same as that explained in the firstembodiment, an explanation thereof is omitted herein.

4) Perform Component Demodulation Process in MMSE-SPIC

The second calculating unit 24 then iterates the following process byk_(max) times using the symbol expectation having been inverselytransformed into the original basis by the second transforming unit 23.In the ordinary MMSE-SPIC, as described earlier, a soft-decision symbolis calculated in the Initial Process, and the component demodulationprocess is executed using the calculated soft-decision symbol.

In the component demodulation process in MMSE-SPIC according to theembodiment, however, the second calculating unit 24 performs the firstcomponent demodulation process, being the first of the k_(max)iterations, using the expectation having been inversely transformed intothe original basis by the second transforming unit 23. By contrast, inthe second component demodulation process and thereafter in the k_(max)iterations, the second calculating unit 24 uses the symbol expectationcalculated in the previous MMSE-SPIC.

4-1) Perform Replica Generation and Cancellation

The second calculating unit 24 performs replica generation andcancellation for each of the layers j=1, . . . , N, based on Equation(14). When the number of iterations k is one, the second calculatingunit 24 performs replica generation and cancellation by assigning theexpectation having been inversely transformed into the original basis bythe second transforming unit 23 as the estimated symbol in Equation(14). If the number of iterations k is equal to or more than two, thesecond calculating unit 24 performs replica generation and cancellationby assigning the symbol expectation calculated in the previous MMSE-SPICas the estimated symbol in Equation (14).

4-2) Generate Soft-Decision Data

The second calculating unit 24 generates soft-decision data, for each ofthe layers j=1, . . . , N, by using {tilde over (y)}_(j) as input data,and performing MMSE described above in the 1×M antenna configuration.

4-3) Acquire Soft-Decision Symbol Estimation

The second calculating unit 24 maps the generated soft-decision data toa prior probability, and acquires the following symbol expectation.

{circumflex over (s)}= s

Operation of Demodulator Apparatus 20

An operation of the demodulator apparatus 20 according to thisembodiment is generally the same as the first embodiment explained withreference to FIG. 4, except that the first process (S200) and the secondprocess (S300) according to this embodiment are partly different fromthose in the first embodiment.

First Process

FIG. 7 is a flowchart illustrating an exemplary first process accordingto the second embodiment. Because the processes assigned with the samereference numerals in FIG. 7 as those in FIG. 5 are the same as thoseexplained in FIG. 5, except for the point described below, redundantexplanation thereof are omitted herein.

After the process at Step S206, for a layer equal to or more than thelayer j+1, the first calculating unit 22 estimates a range satisfyingthe conditions of the value the original symbol can take, given theoptimal symbol at this point in time (S220). The first calculating unit22 then estimates an expectation of the symbol based on Equation (15)(S221). The first calculating unit 22 then executes the process at StepS208.

Second Process

FIG. 8 is a flowchart illustrating an exemplary second process accordingto the second embodiment. Because the processes assigned with the samereference numerals in FIG. 8 as those in FIG. 6 are the same as thoseexplained in FIG. 6, except for the point described below, redundantexplanation thereof are omitted herein.

If the value of the variable k is one (Yes at S305), the secondcalculating unit 24 selects the expectation calculated by the firstcalculating unit 22 as the estimated symbol (S330). If the value of thevariable k is not one (No at S305), the second calculating unit 24selects the expectation calculated previously in the process of symbolexpectation estimation (in the previous iteration) (the process at StepS333 described later) as the estimated symbol (S331).

The second calculating unit 24 then performs replica generation andcancellation using the estimated symbol selected at Step S330 or S331,based on Equation (14) (S332). The second calculating unit 24 thengenerates soft-decision data by performing MMSE (S309), maps thegenerated soft-decision data to the prior probability, and calculatesthe symbol expectation (S333). The second calculating unit 24 thenexecutes the process at Step S310.

Simulation Result

FIG. 9 is a schematic of an exemplary simulation result representing areception characteristic (block error rate (BLER)) of the demodulatorapparatus 20 according to the second embodiment. For the purpose ofcomparison, reception characteristics of Full-MLD, QRM-MLD (M=3) in thelattice-reduced basis, MMSE, and MMSE-SPIC are also illustrated in FIG.9. MMSE and MMSE-SPIC illustrated in FIG. 9 are not the process in thelattice-reduced basis, but in the original basis. The simulationillustrated in FIG. 9 assumes conditions such as an information bitssize K of 1536, a modulation scheme of 16QAM, an encoding rate R of 8/9,and the number of antennas used in transmissions and receptions of 2×2.An assumed fading model is Rayleigh fading.

As illustrated in FIG. 9, the demodulator apparatus 20 according to thisembodiment exhibits better reception characteristics than those of MMSEor MMSE-SPIC, which are representative linear detections. Furthermore,the demodulator apparatus 20 according to this embodiment exhibitsbetter reception characteristics than QRM-MLD in the lattice-reducedbasis, when M=3. Furthermore, the demodulator apparatus 20 according tothis embodiment exhibits reception characteristics that are somewhatlower than, but near those achieved by Full-MLD. The demodulatorapparatus 20 according to this embodiment is a scheme in which thelinear detection in the lattice-reduced basis is combined with theinterference cancellation method, and computational load of thedemodulator apparatus 20 according to this embodiment is smaller thanthat of MLD. As may be clear from FIG. 9, computational load of thedemodulator apparatus 20 according to this embodiment is smaller thanthat of QRM-MLD using lattice reduction, and the demodulator apparatus20 according to this embodiment achieves reception performanceequivalent to or higher than QRM-MLD using the lattice reduction.

[c] Third Embodiment

A third embodiment will now be explained. In the second embodiment, toallow SQRD-MMSE-SSIC in the lattice-reduced basis to generate anexpectation of a symbol, a possible value range of the symbol isestimated for each layer. By contrast, this embodiment is different fromthe second embodiment in that, in the third embodiment, the expectationis acquired by selecting a specified number of symbols in the ascendingorder of the distance to the optimal estimated symbol, among thoselocated around the optimal estimated symbol (hard-decision symbol),without estimating the range.

Specifically, after the “2-2) Perform Synchronous Detection” describedin the second embodiment, the second calculating unit 24 estimates theoptimal symbol for each of the layers by calculating Equation (13),instead of “2-3) Acquire Symbol Estimation Range”. The secondcalculating unit 24 then selects the specified number of symbols fromthe symbols located around the estimated optimal symbol, in theascending order of the Euclidean distance to the optimal symbol. Thesecond calculating unit 24 then executes “2-4) Perform symbolexpectation operation” using the selected predetermined number ofsymbols, and calculates the expectation.

[d] Fourth Embodiment

A fourth embodiment will now be explained. In the second embodiment, toallow SQRD-MMSE-SSIC in the lattice-reduced basis to generate anexpectation of a symbol, a range of possible values is estimated for thesymbol of each layer, and the expectations of all of the symbols fallingwithin the estimated range is calculated. This embodiment is differentfrom the second embodiment in that, in the fourth embodiment, theexpectation is acquired by selecting a specified number of symbols amongthose positioned near the optimal estimated symbol (hard-decisionsymbol) and falling within the estimated range, in the ascending orderof the distance to the optimal estimated symbol.

Specifically, the second calculating unit 24 estimates the optimalsymbol for each layer by calculating Equation (13) after the process of“2-3) Acquire Symbol Estimation Range” explained in the secondembodiment. The second calculating unit 24 then selects a specifiednumber of symbols, in the ascending order of the Euclidean distance tothe optimal symbol, among the symbols positioned around the optimalsymbol and falling within the estimated symbol range. The secondcalculating unit 24 then executes “2-4) Perform symbol expectationoperation” using the selected predetermined number of symbols, andcalculates the expectation.

[e] Fifth Embodiment

A fifth embodiment will now be explained. In the first embodiment,MMSE-HPIC is used as the interference cancellation method executed afterthe inverse transformation from the lattice-reduced basis into theoriginal basis. By contrast, in the fifth embodiment, as theinterference cancellation method executed after the inversetransformation from the lattice-reduced basis into the original basis,MMSE-HPIC is executed once to begin with, and MMSE-SPIC is subsequentlyexecuted once or more.

Operation of Demodulator Apparatus 20

FIG. 10 is a flowchart illustrating an exemplary demodulation processaccording to the fifth embodiment. Because the processes assigned withthe same reference numerals in FIG. 10 as those in FIG. 4 are the sameas those explained in FIG. 4, except for the point described below,redundant explanation thereof are omitted herein.

After the second transforming unit 23 performs clipping, the secondcalculating unit 24 generates soft-decision data by executing a thirdprocess which is described later (S400). The third process includes “4)Apply MMSE-HPIC Component Demodulation Process” explained in the firstembodiment.

The second calculating unit 24 then generates soft-decision data basedon the soft-decision data generated in the third process, by performinga fourth process described below (S500). The fourth process includes theprocess of “4) Perform Component Demodulation Process in MMSE-SPIC”explained in the second embodiment. The demodulator apparatus 20 thenends the process illustrated in the flowchart.

Third Process

FIG. 11 is a flowchart illustrating an example of the third process inthe fifth embodiment.

To begin with, the second calculating unit 24 sets the variable i to Nthat is the number of transmission antennas (the number of layers)(S401). The second calculating unit 24 then determines whether the valueof the variable i is equal to or more than one (S402). If the value ofthe variable i is equal to or more than one (Yes at S402), the secondcalculating unit 24 performs the symbol estimation (S403). Specifically,the second calculating unit 24 estimates the hard-decision symbolcalculated by the first calculating unit 22 as the estimated symbol. Thesecond calculating unit 24 then performs replica generation andcancellation based on Equation (14), using the estimated symbolestimated at Step S403 (S404).

The second calculating unit 24 then generates soft-decision data byperforming MMSE described above in the 1×M antenna configuration, usingthe reception signal vectors having the interference component cancelled(S405). The second calculating unit 24 then maps the generatedsoft-decision data to the prior probability, and estimates anexpectation of the symbol (S406). The second calculating unit 24 thendecrements the value of the variable i by one (S407), and performs theprocess at Step S402 again.

If the value of the variable i becomes less than one (No at S402), thesecond calculating unit 24 ends the process illustrated in theflowchart.

Fourth Process

FIG. 12 is a flowchart illustrating an example of the fourth processaccording to the fifth embodiment.

To begin with, the second calculating unit 24 sets two to the variable k(S501). The second calculating unit 24 then determines whether the valueof the variable k is equal to or less than k_(max) (S502). If the valueof the variable k is equal to or less than k_(max) (Yes at S502), thesecond calculating unit 24 sets N that is the number of transmissionantennas (the number of layers) to the variable i (S503). The secondcalculating unit 24 then determines whether the value of the variable iis equal to or more than one (S504). If the value of the variable i isequal to or more than one (Yes at S504), the second calculating unit 24determines whether the value of the variable k is two (S505).

If the value of the variable k is two (Yes at S505), the secondcalculating unit 24 selects the expectation estimated in the thirdprocess explained using FIG. 11, as the estimated symbol (S506). If thevalue of the variable k is not two (No at S505), the second calculatingunit 24 selects the expectation calculated in the previous estimation ofthe symbol expectation (the process at Step S510 described later) in thefourth process, as the estimated symbol (S507).

The second calculating unit 24 then performs replica generation andcancellation using the estimated symbol selected at Step S506 or S507,based on Equation (14) above (S508). The second calculating unit 24 thengenerates soft-decision data by performing MMSE described above in the1×M antenna configuration, using the reception signal vectors having theinterference component cancelled (S509). The second calculating unit 24then maps the generated soft-decision data to the prior probability, andestimates the symbol expectation (S510). The second calculating unit 24then decrements the value of the variable i by one (S511), and performsthe process at Step S504 again.

If the value of the variable i becomes less than one (No at S504), thesecond calculating unit 24 adds one to the variable k (S512), andperforms the process at Step S502 again. If the value of the variable kexceeds k_(max) (No at S502), the second calculating unit 24 outputs thesoft-decision data corresponding to each of the estimated symbols to thedecoder 121, and ends the process illustrated in the flowchart.

Others

In the first embodiment, the second calculating unit 24 executesMMSE-HPIC in the original basis as the interference cancellation method,but the technologies according to the application are not limitedthereto. For example, the second calculating unit 24 according to thefirst embodiment may execute MMSE-SPIC in the original basis as theinterference cancellation method. Furthermore, in the embodimentsdescribed above, the second calculating unit 24 executes PIC as theinterference cancellation method in the original basis, but thetechnologies according to the application are not limited thereto. Forexample, the second calculating unit 24 according to the embodiments mayexecute the SIC, SSIC in particular, as the interference cancellationmethod in the original basis.

Hardware

The elements included in each of the units described above andillustrated in the drawings are not always configured physically in themanner illustrated in the drawings. In other words, specificconfigurations in which the apparatuses are distributed or integratedare not limited to those illustrated in the drawings, and the whole or apart of the units may be distributed or integrated functionally orphysically in any units depending on various loads or utilization.

Furthermore, the whole or a part of the processing functions implementedby each of the apparatuses may be executed by a micro-computer such as acentral processing unit (CPU), a micro processing unit (MPU), and amicro controller unit (MCU). Furthermore, the whole or a part of theprocessing functions may be executed by a computer program parsed andexecuted by a CPU (or a micro-computer such as an MPU or an MCU), orimplemented as hardware using wired logics.

Various processes explained in the embodiments may be implemented bycausing a communication apparatus to execute a computer program preparedin advance. Therefore, an exemplary communication apparatus having thesame functions as those described in the embodiments will now beexplained. FIG. 13 is a schematic of an exemplary communicationapparatus implementing the functions of the demodulator apparatus.

In FIG. 13, a communication apparatus 40 executing a demodulatingprogram includes a wireless communication interface 41, an operationinterface 42, a display interface 43, a CPU 44, a random access memory(RAM) 45, and a read-only memory (ROM) 46.

As illustrated in FIG. 13, demodulating program 460 is stored in ROM 46,for example, in advance. The CPU 44 reads the demodulating program 460from the ROM 46, and loads the demodulating program 460 onto the RAM 45.The demodulating program 460 may be integrated or distributed, in thesame manner as in the other elements illustrated in FIG. 3. Furthermore,pieces of data stored in the ROM 46 do not always need to be stored inthe ROM 46, and only the data used in the processing may be stored inthe ROM 46.

The CPU 44 causes the demodulating program 460 to function as ademodulating process 450. The demodulating process 450 loads variousdata read from the ROM 46 onto the area of the RAM 45 assigned to thedemodulating process 450 as appropriate, and performs various processingbased on the loaded various types of data. In the embodiments describedabove, by causing the CPU 44 to read and to execute the demodulatingprogram 460, the demodulating program 460 implements the same functionsas those achieved by the first transforming unit 21, the firstcalculating unit 22, the second transforming unit 23, and the secondcalculating unit 24.

The demodulating process 450 according to the first, the third, and thefourth embodiments performs the process executed by the firsttransforming unit 21, the first calculating unit 22, the secondtransforming unit 23, and the second calculating unit 24 illustrated inFIG. 3, e.g., the processes illustrated in FIGS. 4 to 6. Thedemodulating process 450 according to the second embodiment performs theprocesses executed by the first transforming unit 21, the firstcalculating unit 22, the second transforming unit 23, and the secondcalculating unit 24 illustrated in FIG. 3, e.g., the processesillustrated in FIGS. 7 and 8. The demodulating process 450 according tothe fifth embodiment performs the processes executed by the firsttransforming unit 21, the first calculating unit 22, the secondtransforming unit 23, and the second calculating unit 24 illustrated inFIG. 3, e.g., the processes illustrated in FIGS. 9 to 11. All of theprocessing units implemented virtually by the CPU 44 do not always needto be implemented by the CPU 44, and only the processing unit used inthe process may be implemented.

Furthermore, the demodulating program 460 does not need to be stored inthe ROM 46 from the beginning. For example, the computer programs may bestored in a portable recording medium such as a memory card insertedinto the communication apparatus 40, and the communication apparatus 40may acquire the computer programs from the portable recording medium andexecute the computer programs. Furthermore, the communication apparatus40 may also acquire the computer programs from another device such as acomputer and a server device storing therein the computer programs, overa wireless communication circuit, a public circuit, the Internet, alocal area network (LAN), or a wide area network (WAN).

In the embodiments described above, the first transforming unit 21QR-decomposes the channel response matrix H into the product of anorthogonal matrix Q and an upper triangular matrix R, and calculates thelattice reduction transformation matrix T and its inverse matrix T⁻¹ forthe channel response matrix, and applies lattice reduction to theorthogonal matrix Q and the upper triangular matrix R. The firstcalculating unit 22 then uses the lattice-reduced orthogonal matrix Q inperforming the linear detection of the reception signal in thelattice-reduced basis, and calculates an expectation of the symbol inthe lattice-reduced basis. However, the technologies according to theapplication are not limited thereto.

For example, the first transforming unit 21 need not QR-decompose thechannel response matrix H. In such a case, the first transforming unit21 applies lattice reduction to the channel response matrix H, and thefirst calculating unit 22 performs linear detection of the receptionsignal in the lattice-reduced basis using the lattice-reduced channelmatrix, and calculating an expectation of the symbol in thelattice-reduced basis.

According to one embodiment, a lower computational load, being lowerthan computational load in QRM-MLD using lattice reduction, can beachieved, and reception performance, equivalent to reception performanceachieved by QRM-MLD using lattice reduction, can also be achieved.

All examples and conditional language recited herein are intended forpedagogical purposes of aiding the reader in understanding the inventionand the concepts contributed by the inventor to further the art, and arenot to be construed as limitations to such specifically recited examplesand conditions, nor does the organization of such examples in thespecification relate to a showing of the superiority and inferiority ofthe invention. Although the embodiments of the present invention havebeen described in detail, it should be understood that the variouschanges, substitutions, and alterations could be made hereto withoutdeparting from the spirit and scope of the invention.

What is claimed is:
 1. A demodulator apparatus comprising: a memory; anda processor coupled to the memory, wherein the processor executes aprocess comprising: applying lattice reduction to a channel responsematrix; applying linear detection to a reception signal inlattice-reduced basis using a lattice-reduced channel response matrix;first calculating an expectation of a symbol in the lattice-reducedbasis; inversely transforming the expectation of the symbol from thelattice-reduced basis into an original basis; and second calculatingsoft-decision data by performing interference cancellation method ininversely transformed expectation of the symbol in the original basis.2. The demodulator apparatus according to claim 1, wherein the firstcalculating includes calculating a hard-decision symbol that is a resultof applying a quantizing function to an estimated symbol acquired fromsynchronous detection in the lattice-reduced basis, as the expectationof the symbol.
 3. The demodulator apparatus according to claim 1,wherein the first calculating includes calculating a soft-decisionsymbol that is an expectation using a probability distribution as aweight in the lattice-reduced basis, as the expectation of the symbol.4. The demodulator apparatus according to claim 3, wherein the firstcalculating includes calculating a hard-decision symbol that is a resultof applying a quantizing function to an estimated symbol acquired fromsynchronous detection in the lattice-reduced basis, identifying, foreach layer, a range of possible values for the symbol in thelattice-reduced basis, and calculating the expectation of the symbolusing a Gaussian distribution of symbols falling within the identifiedrange, as the probability distribution.
 5. The demodulator apparatusaccording to claim 3, wherein the first calculating includes calculatinga hard-decision symbol that is a result of applying a quantizingfunction to an estimated symbol acquired from synchronous detection inthe lattice-reduced basis, selecting, for each layer, a predeterminednumber of symbols in the ascending order of Euclidean distance to thehard-decision symbol in the lattice-reduced basis, and calculating theexpectation of the symbol using a Gaussian distribution of the selectedsymbols as the probability distribution.
 6. The demodulator apparatusaccording to claim 3, wherein the first calculating includes calculatinga hard-decision symbol that is a result of applying a quantizingfunction to an estimated symbol acquired from synchronous detection inthe lattice-reduced basis, identifying, for each layer, a range ofpossible values for the symbol in the lattice-reduced basis, selecting apredetermined number of symbols in the lattice in the lattice-reducedbasis within the identified range in the ascending order of Euclideandistance to the hard-decision symbol, and calculating the expectation ofthe symbol using a Gaussian distribution of the selected symbols as theprobability distribution.
 7. The demodulator apparatus according toclaim 1, wherein the second calculating includes performing softparallel interference cancellation (SPIC) as the interferencecancellation method.
 8. The demodulator apparatus according to claim 1,wherein the second calculating includes performing soft successiveinterference cancellation (SSIC) as the interference cancellationmethod.
 9. The demodulator apparatus according to claim 1, wherein thesecond calculating includes calculating the soft-decision data byperforming the interference cancellation method a plurality of number oftimes in the original basis, the interference cancellation methodperformed for a first time is interference cancellation method using ahard-decision symbol calculated by the linear detection; and theinterference cancellation method performed for a second time andthereafter is interference cancellation method using a soft-decisionsymbol.
 10. A demodulation method executed by a wireless communicationapparatus, the demodulation method comprising: lattice-reducing achannel response matrix, using a processor of the wireless communicationapparatus; applying linear detection to a reception signal inlattice-reduced basis using a lattice-reduced channel response matrix,using the processor of the wireless communication apparatus; calculatingan expectation of a symbol in the lattice-reduced basis, using theprocessor of the wireless communication apparatus; inverselytransforming the expectation of the symbol from the lattice-reducedbasis into the original basis, using the processor of the wirelesscommunication apparatus; and calculating soft-decision data byperforming interference cancellation method in inversely transformedexpectation of the symbol in the original basis, using the processor ofthe wireless communication apparatus.